汇编语言>>>请问程序中有错误的么?如何修改?

来源:百度知道 编辑:UC知道 时间:2024/06/27 18:17:00
datarea segment
buffer db 80 dup(?)
flag db ?
datarea ends
prognam segment
main proc far

assume cs:prognam,ds:datarea

start:
push ds
sub ax,ax
push ax
mov ax,datarea
mov ds,ax
lea bx,buffer
mov flag,0
next: mov ah,01
int 21h
test flag,01h
jnz follow
cmp al,20h
jnz exit
mov flag,1
jmp next
follow: cmp al,20h
jz exit
mov [bx],al
inc bx
jmp next
exit: ret
main endp
prognam ends

end start

没错呀,程序的功能是:从键盘输入一行,第一个字符必须是空格,如不是退出程序,如是,则开始接受键入字符并顺序存放在首地址为BUFFER的缓冲区中,直到第2个空格符键入退出程序。